/**
 * @desc 如果是正常数字，则数字乘以100
 * */
export const up100 = (value) => {
    return parseInt(value * 100)
};
/**
 * @desc js浮点数乘法
 * */
export const accMul = (arg1, arg2 = 100) => {
    var m = 0, s1 = arg1.toString(), s2 = arg2.toString();
    try {
        m += s1.split(".")[1].length;
    } catch (e) {
    }
    try {
        m += s2.split(".")[1].length;
    } catch (e) {
    }
    return Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m);
}
/**
 * @desc js浮点数除法
 * */
export const accDiv = (a, b = 100) => {
    var c, d, e = 0,
        f = 0;
    try {
        e = a.toString().split(".")[1].length;
    } catch (g) {
    }
    try {
        f = b.toString().split(".")[1].length;
    } catch (g) {
    }
    return c = Number(a.toString().replace(".", "")), d = Number(b.toString().replace(".", "")), accMul(c / d, Math.pow(10, f - e));
}

/**
 * @desc 如果是正常数字，则数字除以100
 * */
export const down100 = (value) => {
    return (value / 100).toFixed(2)
};
/**
 * @desc 数字乘以或除以（10的幂数），并保留自定义位小数，非四舍五入
 * @desc 如:upNumber(2.51201,2,2) 将2.51201放大10*10倍并保留2位小数，结果为251.20
 * @desc 如:upNumber(2512.01,2,-3) 将2512.01缩小10*10*10倍并保留2位小数，结果为2.51
 * */
export const transNumber = (value, numfixed = 0, upNum = 0) => { // 将数字放大或缩小10的幂数
    if (numfixed < 0) {
        numfixed = 0
    }
    var f = Math.floor(accMul(accMul(parseFloat(value), Math.pow(10, upNum)), Math.pow(10, numfixed))) / Math.pow(10, numfixed);
    var s = f.toString();
    var rs = s.indexOf('.');
    if (rs < 0) {
        rs = s.length;
        if (numfixed !== 0) {
            s += '.';
        }
    }
    for (let i = 0; i < numfixed; i++) {
        if (s.length < rs + numfixed) {
            s += '0';
        } else if (s.length === rs + numfixed && numfixed !== 0) {
            s += '0';
        }
    }
    return s;
}

// 将数字保留mumfixed位小数
// function toDecimal2(x,numfixed) { // 将数字保留mumfixed位小数
//   var f = parseFloat(x);
//   if (isNaN(f)) {
//     return false;
//   }
//   var f = Math.round(x*Math.pow(10,numfixed))/Math.pow(10,numfixed);
//   var s = f.toString();
//   var rs = s.indexOf('.');
//   if (rs < 0) {
//     rs = s.length;
//     s += '.';
//   }
//   while (s.length <= rs + numfixed) {
//     s += '0';
//   }
//   return s;
// }

